A computer database is a structured set of data that enables users to store data, modify data and/or extract data. The structural blueprint of the database is provided by a schema. The schema describes the significance of individual records. In addition, the schema specifies relationships between and among records. There are a variety of schema organizations that correspond to a plurality of data models employable in database systems. For example, a commonly utilized model is a relational model that organizes data in tables with columns and rows, wherein each column is an attribute and each row is a record. Other possible data models include a hierarchical model, a network model, an associative model, a concept-oriented model, an object oriented model, an entity relationship model, and the like.
In addition, databases attempt to provide and enforce properties associated with a transaction. A transaction is one or more database operations that are treated as a unit or set. An important property of transactions is that all operations in the transaction set must successfully complete for any of the operations to take effect. Databases provide transactions in order to maintain the integrity of the database and the data retained therein.
According to certain definitions, a file system can be considered similar to a database. A file system includes a collection of abstractions that facilitate storing, organizing, navigating, retrieving and/or manipulating data on a storage device. Often, the file system is responsible for maintaining physical locations of data files on the storage device. In addition, the file system can retain data of multiple forms, types and/or structures. Typically, modifications or changes to files in the file system occur in real time such that the changes persist once made. This is distinct from some databases where interactions with the database must reach a particular stage before persisting.